Q: ÉAÉvÉäÉPÅ[ÉVÉáÉìÇ©ÇÁÉRÅ[ÉfÉbÉNÇ…ñ‚Ç¢çáÇÌÇπÇǵǃÅAǪÇÃÉRÅ[ÉfÉbÉNÇ™ÉTÉ|Å[ÉgÇ∑ÇÈîÒ RGB ÉsÉNÉZÉãå`éÆÇí≤Ç◊ÇÈï˚ñ@ÇÕdžÇËÇ‹Ç∑Ç©ÅH
A: îÒ RGB ÉsÉNÉZÉãå`éÆÇÉTÉ|Å[ÉgÇ∑ÇÈÉRÅ[ÉfÉbÉNÇ…ÇÕÅAǪÇÃÉpÉuÉäÉbÉNÉäÉ\Å[ÉXÉäÉXÉgÇ…ÅAîÒ RGB ÉsÉNÉZÉãå`éÆÇà 4 ï∂éöÇÃÉRÅ[ÉhÇäiî[Ç∑ÇÈ 'cpix' ÇΔǢǧÉäÉ\Å[ÉXÇ™ä‹Ç‹ÇÍǃǢNjÇ∑ÅBDZÇÃèÓïÒÇÕÅAGetComponentPublicResource ÇégǡǃÅAÉAÉvÉäÉPÅ[ÉVÉáÉìÇ…ÇÊǡǃéÊìæÇ≈Ç´Ç‹Ç∑ÅB
ÉäÉXÉg 1 Ç…ÅAÉRÅ[ÉfÉbÉNÇ™ì¡íËÇÃîÒ RGB ÉsÉNÉZÉãå`éÆÇÉTÉ|Å[ÉgÇ∑ÇÈǩǫǧǩÇÉAÉvÉäÉPÅ[ÉVÉáÉìÇ≈í≤Ç◊ÇÈï˚ñ@Çé¶ÇµÇ‹Ç∑ÅB
ÉäÉXÉg 1.
| Boolean DoesCodecSupportPixelFormat(Component inComponent,
OSType inFormat)
{
Boolean isSupported = false;
OSTypePtr *hResource = NULL;
long thePixelFormatCount;
int i;
OSErr err;
// íçãLÅF GetComponentPublicResource ÇÕÅAÉäÉ\Å[ÉXÇ≈ÇÕÇ»Ç≠ÅA
// ÉnÉìÉhÉãÇï‘Ç∑ÅBåƒÇ—èoǵë§ÇÕÅADisposeHandle Çégǡǃ
// DZÇÃÉnÉìÉhÉãÇîjä¸Ç∑ÇÈïKóvǙdžÇÈ
err = GetComponentPublicResource(inComponent,
'cpix', 1,
(Handle*)&hResource);
if (err || (NULL == hResource)) goto bail;
thePixelFormatCount = GetHandleSize((Handle)hResource)/4);
for (i = 0; i < thePixelFormatCount && !isSupported; i++)
isSupported = ((*hResource)[i] == inFormat);
DisposeHandle((Handle)hResource);
bail:
return isSupported;
}
|
ÉRÅ[ÉfÉbÉNÉfÉxÉçÉbÉpÅF
'2vuy' ÅA'r408' ÅA'v408' Ç…ëŒÇ∑ÇÈÉRÅ[ÉfÉbÉNÇÃÉAÉhÉoÉ^ÉCÉWÉìÉOÉTÉ|Å[ÉgÇÕÅAÇΩÇΔǶnjÅAê} 1 Ç…é¶Ç∑ÇÊǧDžÅAÉpÉuÉäÉbÉNÉäÉ\Å[ÉXÉäÉXÉgÇÃàÍïîÇ… 'cpix' ÉäÉ\Å[ÉXÇä‹ÇÒÇ≈ǢNjÇ∑ÅB
ê} 1.
| resource 'cpix' (kMyCPIXResID) {
{
'2vuy','r408','v408'
}
};
|
êÊì™Ç…ñflÇÈ
éQçléëóøÅF
[2004 îN 1 åé 5 ì˙]
|